package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.SysDataAsset;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 数据资产Mapper接口
 *
 * @author ruoyi
 */
@Mapper
public interface SysDataAssetMapper {
    /**
     * 查询数据资产
     *
     * @param assetId 数据资产ID
     * @return 数据资产
     */
    public SysDataAsset selectSysDataAssetById(Long assetId);

    /**
     * 根据名称和类型查询资产
     *
     * @param assetName 资产名称
     * @param assetType 资产类型
     * @return 资产
     */
    public SysDataAsset selectSysDataAssetByNameAndType(@Param("assetName") String assetName, @Param("assetType") String assetType);

    /**
     * 查询数据资产列表
     *
     * @param sysDataAsset 数据资产
     * @return 数据资产集合
     */
    public List<SysDataAsset> selectSysDataAssetList(SysDataAsset sysDataAsset);

    /**
     * 新增数据资产
     *
     * @param sysDataAsset 数据资产
     * @return 结果
     */
    public int insertSysDataAsset(SysDataAsset sysDataAsset);

    /**
     * 修改数据资产
     *
     * @param sysDataAsset 数据资产
     * @return 结果
     */
    public int updateSysDataAsset(SysDataAsset sysDataAsset);

    /**
     * 删除数据资产
     *
     * @param assetId 数据资产ID
     * @return 结果
     */
    public int deleteSysDataAssetById(Long assetId);

    /**
     * 批量删除数据资产
     *
     * @param assetIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteSysDataAssetByIds(Long[] assetIds);

    int insertSysDataAssetSelective(SysDataAsset sysDataAsset);

}
